#ifndef FEEBLE_MUNDANE_UI_H
#define FEEBLE_MUNDANE_UI_H

#include <string>
#include <any>
#include <optional>
#include <cstddef>

#include "game.h"

class ui
{

	std::any state;

	public:
	ui(const game::world&);
	void intro(std::string title);
	void battle(game::battle&);

	std::optional<game::action> action();
	std::size_t update(const std::vector<game::state_update>&);
	bool loop();

	void spawned(game::field_t::iterator);

};

#endif /* end of include guard */
